/*  
Team GEG:  G'Toons project.
Card Data Parser:  Reads card data from a text file, and places it into a useable structure.
Garth Brubaker
*/
#ifndef CARDDATAPARSER_H
#define CARDDATAPARSER_H

#include <iostream>
#include <fstream>
#include <string>
#include <queue>
#include "CardDataClass.h"
using namespace std;

class cardDataParser
{
private:
	queue<CardData> cardRead;

public:

	cardDataParser();

	void ReadACard(ifstream& infile);					//Reads one card entry

		int ParseCardColors(string colorString);			//Reads the colors from the text file and builds the enum flag from that.

		int ParseInfluence(string influenceString);			//Same as above, but for the influence.

		int ParseTargetLocation(string targetAreaString);	//Same as above, but for the target area.

		int ParseCardFeatures(string featureString);		//Same as above, but for card features instead of colors (Right now it is being used both for the cards attributes as well as the attributes of its target)

	int ReadDataFromFile(ifstream& infile);				//Reads and entire file of entries

	int TestingOutput();								//couts the contents of the cardDataStruct queue

	void getData(CardData* cards[]);
};

#endif